package com.eorchis.module.classplanapply.dao;

import java.util.List;

import com.eorchis.core.basedao.dao.IDaoSupport;
import com.eorchis.module.classplanapply.bean.ClassPlanApplyQueryBean;
import com.eorchis.module.classplanapply.bean.ClassPlanSignUserBean;
import com.eorchis.module.classplanapply.ui.commond.ClassPlanApplyQueryCommond;
import com.eorchis.module.classplanapply.ui.commond.ClassPlanApplyValidCommond;
import com.eorchis.module.trainingclass.ui.commond.TrainingClassQueryCommond;

/**
 * Title: IClassPlanApplyDao<br>
 * Description: 班级计划报名数据接口<br>
 * Company: GoldGov<br>
 * Copyright @ 2012 GoldGov .All rights reserved.<br>
 * @author SHQ
 * @createDate 2016-01-05
 * @version $Revision$
 */
public interface IClassPlanApplyDao 
				extends IDaoSupport
{

	public void deleteByClassId(List<String> classId);
	/**
	 * @category 根据班级查询条件获取计划报名列表
	 * @param queryCommond
	 * @return
	 */
	public List<ClassPlanSignUserBean> findClassPlanSignList(TrainingClassQueryCommond queryCommond) throws Exception;
	/**
	 * @category 根据班级计划人数
	 * @param classId
	 * @param planUserCount
	 */
	public void updateClassUserCountById(String classId,Integer planUserCount) throws Exception;

	/**
	 * @category 查询班级的实际可报名额
	 * @param queryCommond
	 * @return
	 * @throws Exception 
	 */
	public ClassPlanApplyValidCommond findClassAsignCount(ClassPlanApplyQueryCommond queryCommond) throws Exception;
	public List<ClassPlanApplyQueryBean> findClassPlanApplyQueryBeanList(
			ClassPlanApplyQueryCommond queryCommond)throws Exception;

	/**
	 * @category 查询培训班计划名额
	 * @param queryCommond
	 * @return
	 * @throws Exception
	 * @author LongJZ
	 * @createDate 2016-1-29
	 */
	public List<ClassPlanApplyQueryBean> findClassPlanApplyList(ClassPlanApplyQueryCommond queryCommond) throws Exception;
}
